1. Field of Utilization in Industry
The present invention relates to a numerically controlled curved surface machining unit and, particularly to such a unit that improves machining surface roughness and accuracy and enables to achieve high-speed machining.
2. Description of Prior Art
FIG. 10 shows comparison between a conventional linear interpolation machining method and a conventional NURBS interpolation machining method.
In conventional NC (numerically controlled) curved-surface machining, as shown in FIG. 10(a), it is machined by broken-line approximation, so that the machined surface roughness is bad and a lot of hand-finishing steps are needed thereafter. Further, as shown in FIG. 10(b), by acceleration/deceleration when positioning, an average feed rate decreases, as a result, a long machining time is needed, further, a vast amount of NC (numerical control) data at shorter pitches are required to improve the machining surface accuracy.
Then, for the purpose of improvement of the machined surface accuracy and reduction of the NC data, various curved-surface machining methods by the NC (numerically controlled) machine are proposed. However, even if in those conventional methods, there have been still left problems of reduction in machined surface roughness by the broken-line approximation and decrease in average feed rate by acceleration/deceleration when positioning.
FIG. 11 shows the relationship between a NURBS curve and control points.
In order to solve those problems, an interpolation method by a NURBS (Non-Uniform Rational B-Spline) curve, that is, a non-uniform rational B-spline curve is proposed. The NURBS curve is a kind of B-spline curve, and it is a curve which is non-uniform in distances between knots forming the curve and expressed by using a rational expression. The NURBS curve is characterized by being expressed by rational expression to define the curve, while the other curves are expressed by using polynomial expression.
By controlling the rational formulas, it is possible to locally and easily deform the curve. Further, it is possible to deal consistently with a circular cylinder, circular cone, sphere, hyperbolic curve and parabola which can not be precisely expressed by using the other curves.
In FIG. 11, a NURBS curve defines a curve by the control points Pi, weights wi and knot vectors xi. In the symbols used hereunder, k is degree, Pi is control point, wi is weights, xi is knot (xi≦xi+1), [x0, x1, . . . , xm] (m=n+k) is knot vector, and t is spline parameter.
A spline basis function N(t) is expressed by a de Boor-Cox recursive expression, as by Expressions 1 and 2. An interpolating NURBS curve P(t) is expressed as by Expression 3.                                           N                          i              ,              1                                ⁡                      (            t            )                          =                  {                                                                                          1                    ⁢                                                                                   ⁢                                          (                                                                        x                          i                                                ≤                        t                        ≤                                                  x                                                      i                            +                            1                                                                                              )                                                        ⁢                                                                                                                                                               0                  ⁢                                                                           ⁢                                      (                                                                  t                        <                                                  x                          i                                                                    ,                                                                        x                                                      i                            +                            1                                                                          <                        t                                                              )                                                                                                          Expression        ⁢                                   ⁢        1                                                      N                          i              ,              k                                ⁡                      (            t            )                          =                                                            (                                  t                  -                                      x                    i                                                  )                            ⁢                                                N                                      i                    ,                                          k                      -                      1                                                                      ⁡                                  (                  t                  )                                                                                    x                                  i                  +                  k                  -                  1                                            -                              X                i                                              +                                                    (                                                      x                                          i                      +                      k                                                        -                  t                                )                            ⁢                                                N                                                            i                      +                      1                                        ,                                          k                      -                      1                                                                      ⁡                                  (                  t                  )                                                                                    x                                  i                  +                  k                                            -                              X                                  i                  +                  1                                                                                        Expression        ⁢                                   ⁢        2                                          P          ⁡                      (            t            )                          =                                                            ∑                                  i                  =                  0                                n                            ⁢                                                           ⁢                                                                    N                                          i                      ,                      k                                                        ⁡                                      (                    t                    )                                                  ⁢                                  w                  i                                ⁢                                  P                  i                                                                                    ∑                                  i                  =                  0                                n                            ⁢                                                           ⁢                                                                    N                                          i                      ,                      k                                                        ⁡                                      (                    t                    )                                                  ⁢                                  w                  i                                                              ⁢                                           ⁢                      (                          x0              ≤              t              ≤                              x                ⁢                                                                   ⁢                m                                      )                                              Expression        ⁢                                   ⁢        3            
A NURBS interpolation instruction is outputted in the following format.
G05P10000; (high-accuracy continuous contour control mode ON). . .G06.2[P__] K__X_Y_Z_α_β_[R_][F_];K_X_Y_Z_α_β_[R_];K_X_Y_Z_α_β_[R_];K_X_Y_Z_α_β_[R_];. . .K_X_Y_Z_α_β_[R_];K_;. . .K_;G01 . . .. . .G05P0; (high-accuracy continuous contour control mode OFF)where; each code has the following meaning: G06.2: NURBS interpolation mode ON P: Degree of NURBS curve K_X_Y_Z_α_β_: Control point (α, β: Rotary axis instruction) R: Weights K: Knot F: Feed rate. 
In the NURBS interpolation machining, as shown in FIG. 10(c), since a curve can be machined smoothly, hand-finishing steps are less. Further, as shown in FIG. 10(d), acceleration/deceleration when positioning becomes smooth, whereby the average feed rate increases, so that the machining time can be shortened and high-speed machining is possible. Further, since it is possible to set effectively control points of NURBS interpolation, it is said that it has the advantage that NC data become less.
The present applicant proposes the method of reading CL (cutter location data from a CAM system and forming a NURBS curve NC data of a tool moving path, in the U.S. application Ser. No 10/437,279 or JP 2001-92516 A, for example. Further, a method forming the above-mentioned NURBS curve NC data by making quantities of change in feed rate into a curve is proposed by the applicant. Still further, a method of machining a material at high precision and high efficiency from two tool paths is proposed.
A NC post processor unit corresponding to a conventional simultaneous multi-axis control NC machine reads CL data composed of tool control point (tip position) vectors and tool axis (spindle direction) vectors calculated along a machining path direction in the workpiece coordinates defined by a CAM system, and a machine configuration of the simultaneous multi-axis control NC machine, and transforms them a three linear axes coordinates and a rotary angle in the machine coordinate system in order to operate the NC machine.
This transformation is performed in the following three steps, generally:
Step 1: reading CL data composed of the tool length, tool control point vector and tool axis vector, and machine configuration composed of a first rotary axis, a second rotary axis, a tool axis and master axis, of the machine;
Step 2; converting the tool axis vectors into rotation angles according to the machine configuration; and
Step 3: converting the tool control point vectors into the three linear axes direction of the machine according to the tool length and tool axis vectors.
As for the rotation angle conversion in the step 2, the following 5 patterns of typical machine configuration of a 5 axes control NC machine which is a kind of the simultaneous multi-axis control NC machine and a angle conversion method of converting into angles from direction vectors are disclosed, for example, in JP 7-334223 A (pages 3 to 5, FIGS. 3 to 11):                (1) Basic 3 axes=X, Y, Z axes,                    2 axes of rotary axes=A, C axes,            tool axis=A axis;                        (2) Basic 3 axes=X, Y, Z axes,                    2 axes of rotary axes=B, C axes,            tool axis=A axis;                        (3) Basic 3 axes=X, Y, Z axes,                    2 axes of rotary axes=A, B axes,            tool axis=X axis;                        (4) Basic 3 axes=X, Y, Z axes,                    2 axes of rotary axes=A, B axes            (B axis is a master axis),            tool axis=Z axis;                        (5) Basic 3 axes=X, Y, Z axes,                    2 axes of rotary axes=A, B axes            (A axis is a master axis),            tool axis=Z axis.                        
In the patterns (1) to (5), the tool axis vector is expressed as follows when expressing by using (I, J, K):                     A        =                                                            tan                                  -                  1                                            ⁡                              (                                                                                                    I                        2                                            +                                              J                        2                                                                              K                                )                                      ⁢                                                   ⁢            C                    =                                    tan                              -                1                                      ⁡                          (                              I                                  -                  J                                            )                                                          Expression        ⁢                                   ⁢        4                                B        =                                            tan                              -                1                                      ⁢                          (                                                                                          I                      2                                        +                                          J                      2                                                                      K                            )                        ⁢                                                   ⁢            C                    =                                    tan                              -                1                                      ⁡                          (                              J                I                            )                                                          Expression        ⁢                                   ⁢        5                                A        =                                                            tan                                  -                  1                                            ⁡                              (                                  J                                      -                    K                                                  )                                      ⁢                                                   ⁢            B                    =                                    tan                              -                1                                      ⁡                          (                                                                                          J                      2                                        +                                          K                      2                                                                      I                            )                                                          Expression        ⁢                                   ⁢        6                                A        =                                                            tan                                  -                  1                                            ⁡                              (                                                      -                    J                                                                                                      I                        2                                            +                                              K                        2                                                                                            )                                      ⁢                                                   ⁢            B                    =                                    tan                              -                1                                      ⁡                          (                              I                K                            )                                                          Expression        ⁢                                   ⁢        7                                A        =                                                            tan                                  -                  1                                            ⁡                              (                                                      -                    J                                    K                                )                                      ⁢                                                   ⁢            B                    =                                    tan                              -                1                                      ⁡                          (                              I                                                                            J                      2                                        +                                          K                      2                                                                                  )                                                          Expression        ⁢                                   ⁢        8            
Further, the tool axis vector inputted in the step 1 is set so that the 2nd power sum is 1 or constant, as shown by Expression 9. Here, if the constant value is set to the 2nd power of the tool length, it is not needed to input the tool length in the step 2. In the other words, Expression 9 expresses points on a sphere the radius of which is 1 or constant.I2+J2+K2=1(or constant)  Expression 9